Exploiting path mapping for web cache deception
https://portswigger.net/web-security/web-cache-deception/lab-wcd-exploiting-path-mapping
BACKGROUND
To solve the lab, find the API key for the user carlos. You can log in to your own account using the following credentials: wiener:peter. Required knowledge
To solve this lab, you'll need to know:
How regex endpoints map URL paths to resources.
How to detect and exploit discrepancies in the way the cache and origin server map URL paths.
These points are covered in our Web cache deception Academy topic.
EXPLOITATION
https://siunam321.github.io/ctf/portswigger-labs/Web-Cache-Deception/WCD-1/
Luego de realiazr un login se puede apreciar que la ruata my-acount lista la api key, por lo que sera el target al cual buscaremos realiazar el crafteo de una url para web cache deception.
X-cache
- miss : contacto con el servidor de origen para obtener el valor
- hit : lo obtuvo de la cache Cache-Control: max-age=30
- duracion de almacenamiento de 30s
La url es manejada de una forma en la cual al agregarle un file format .css .js correspondiente a Resources normalmente, entrega un comportamiento de caching en la respuesta junto a la api key, por lo que al craftear la url se va a buscar que el target abra la url para asi luego consultar con una get request el archivo almacenado en la memoria cache para asi obtener el valor.
Construccion del exploit:
- utilizar script tag
- document.location="url con elarchivo estatico a revisar la cache"
<script>document.location="https://YOUR-LAB-ID.web-security-academy.net/my-account/wcd.js"</script>